package com.sc.nft.entity.vo.mall;


import com.sc.nft.entity.dto.AttributeDetailDTO;
import com.sc.nft.enums.AllowedShoppingCouponsEnum;
import com.sc.nft.enums.MallBuyLimitTypeEnum;
import com.sc.nft.enums.ProductTypeEnum;
import com.sc.nft.enums.task.ActivityTypeEnum;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

@Data
public class ActivityDetailVO {

    @ApiModelProperty("活动Id")
    private Long activityId;
    @ApiModelProperty("活动类型")
    private ActivityTypeEnum activityType;
    @ApiModelProperty(value = "商品类型")
    private ProductTypeEnum type;
    @ApiModelProperty(value = "分类Id")
    private Long categoryId;
    @ApiModelProperty(value = "封面图")
    private List<String> coverImages;
    @ApiModelProperty(value = "缩略图")
    private String thumbnail;
    @ApiModelProperty(value = "开始时间")
    private Date startTime;
    @ApiModelProperty(value = "商品编码")
    private String productCode;
    @ApiModelProperty(value = "商品标题")
    private String productName;
    @ApiModelProperty(value = "售价")
    private String salesPrice;
    @ApiModelProperty(value = "最小售价")
    private String minPrice;
    @ApiModelProperty(value = "最大售价")
    private String maxPrice;
    @ApiModelProperty("限量")
    private Integer buyLimit;
    @ApiModelProperty(value = "购买上限类型0：固定上限，1动态上限")
    private MallBuyLimitTypeEnum buyLimitType;
    @ApiModelProperty(value = "限量文案")
    private String buyLimitStr;
    @ApiModelProperty("上下架状态")
    private Boolean status;
    @ApiModelProperty("创作者昵称")
    private String daoName;
    @ApiModelProperty("头像")
    private String daoImg;
    @ApiModelProperty("是否已开始购买")
    private Boolean allReadyStart;
    @ApiModelProperty("库存是否充足")
    private Boolean stockEnough;
    @ApiModelProperty("活动兑换道具是否充足")
    private Boolean exchangePropEnough;
    @ApiModelProperty("兑换检查")
    private Boolean checkExchange;
    @ApiModelProperty("商品总数量")
    private Integer sumCount;
    @ApiModelProperty(value = "商品详情")
    private List<String> productDetail;
    @ApiModelProperty("活动规格")
    private List<ActivitySpecsVO> activitySpecs;
    @ApiModelProperty("兑换条件")
    private List<ActivityExchangeVO> activityExchanges;
    @ApiModelProperty("dao的唯一id")
    private Long daoId;
    @ApiModelProperty("是否为DAO")
    private Integer isDao;

    @ApiModelProperty("属性名称")
    private String attributeName;

    @ApiModelProperty("文本属性")
    private List<AttributeDetailDTO> attributeDetailDTOList;

    @ApiModelProperty("是否有分享购活动")
    private Boolean isHasActivityShare;

    @ApiModelProperty("最大可兑换数量")
    private BigDecimal maxTotalNum ;

    @ApiModelProperty("是否为优先购")
    private Boolean isHasPreemption = Boolean.FALSE;

    @ApiModelProperty("商品标签")
    private List<MallProductLabelVO> labelList;

    private boolean isAllowedShoppingCoupons;
}
